package model;

import java.io.Serializable;
import java.util.Date;

public class Pessoa implements Serializable {
	
	private static final long serialVersionUID = 2748837857727564816L;
	public static final String PJ = "JURIDICA";
	public static final String PF = "FISICA";
	
	private int id_pessoa;
	private String nome_pessoa;
	private String cnpj;
	private String incricao_estadual;
	private String inscricao_municipal;
	private String cmc;
	private String atividade;
	private String razao_social;
	private String cpf;
	private String nome_pai;
	private String nome_mae;
	private String rg;
	private String nacionalidade;
	private String ctps;
	private String serie_ctps;
	private String pis;
	private Double salario;
	private Double salario_familia;
	private String cbo;
	private String funcao;
	private String tipo;
	private String usuario_alteracao;
	private Date dt_admissao;
	private Date dt_nascimento, dt_cadastro, dt_alteracao;
	private int pessoa_id_pessoa;
	
	public Pessoa(){
		this.setId_pessoa(-1);
	}

	public Pessoa(int id_pessoa, String nome_pessoa, String cnpj, String inscricao_estadual, String inscricao_municipal, String cmc, String atividade,
			          String razao_social, String cpf, String nome_pai, String nome_mae, String rg, String nacionalidade, String ctps, String serie_ctps,
			          String pis, Double salario, Double salario_familia,String cbo, String funcao, Date dt_admissao, Date dt_nascimento, String tipo, 
			          Date dt_cadastro, Date dt_alteracao, String usuario_alteracao, int pessoa_id_pessoa){
	
        this.setId_pessoa(id_pessoa);
		this.setNome_pessoa	(nome_pessoa);
		this.setCnpj(cnpj);
		this.setIncricao_estadual(inscricao_estadual);
		this.setInscricao_municipal(inscricao_municipal);
		this.setCmc(cmc);
		this.setAtividade(atividade);
		this.setRazao_social(razao_social);
		this.setCpf(cpf);
		this.setNome_pai(nome_pai);
		this.setNome_mae(nome_mae);
		this.setRg(rg);
		this.setNacionalidade(nacionalidade);
		this.setCtps(ctps);
		this.setSerie_ctps(serie_ctps);
		this.setPis(pis);
		this.setSalario(salario);
		this.setSalario_familia(salario_familia);
		this.setCbo(cbo);
		this.setFuncao(funcao);
		this.setTipo(tipo);
		this.setUsuario_alteracao(usuario_alteracao);
		this.setDt_admissao(dt_admissao);
		this.setDt_nascimento(dt_nascimento);
		this.setDt_cadastro(dt_cadastro);
		this.setDt_alteracao(dt_alteracao);
		this.setPessoa_id_pessoa(pessoa_id_pessoa);

	}

	@Override
	public String toString() {
		return this.getNome_pessoa();
	}

	public static long getSerialversionuid() {
		return serialVersionUID;
	}

	public int getId_pessoa() {
		return id_pessoa;
	}



	public void setId_pessoa(int id_pessoa) {
		this.id_pessoa = id_pessoa;
	}



	public String getNome_pessoa() {
		return nome_pessoa;
	}



	public void setNome_pessoa(String nome_pessoa) {
		this.nome_pessoa = nome_pessoa;
	}



	public String getCnpj() {
		return cnpj;
	}



	public void setCnpj(String cnpj) {
		this.cnpj = cnpj;
	}



	public String getIncricao_estadual() {
		return incricao_estadual;
	}



	public void setIncricao_estadual(String incricao_estadual) {
		this.incricao_estadual = incricao_estadual;
	}



	public String getInscricao_municipal() {
		return inscricao_municipal;
	}



	public void setInscricao_municipal(String inscricao_municipal) {
		this.inscricao_municipal = inscricao_municipal;
	}



	public String getCmc() {
		return cmc;
	}



	public void setCmc(String cmc) {
		this.cmc = cmc;
	}



	public String getAtividade() {
		return atividade;
	}



	public void setAtividade(String atividade) {
		this.atividade = atividade;
	}



	public String getRazao_social() {
		return razao_social;
	}



	public void setRazao_social(String razao_social) {
		this.razao_social = razao_social;
	}



	public String getCpf() {
		return cpf;
	}



	public void setCpf(String cpf) {
		this.cpf = cpf;
	}



	public String getNome_pai() {
		return nome_pai;
	}



	public void setNome_pai(String nome_pai) {
		this.nome_pai = nome_pai;
	}



	public String getNome_mae() {
		return nome_mae;
	}



	public void setNome_mae(String nome_mae) {
		this.nome_mae = nome_mae;
	}



	public String getRg() {
		return rg;
	}



	public void setRg(String rg) {
		this.rg = rg;
	}



	public String getNacionalidade() {
		return nacionalidade;
	}



	public void setNacionalidade(String nacionalidade) {
		this.nacionalidade = nacionalidade;
	}



	public String getCtps() {
		return ctps;
	}



	public void setCtps(String ctps) {
		this.ctps = ctps;
	}



	public String getSerie_ctps() {
		return serie_ctps;
	}



	public void setSerie_ctps(String serie_ctps) {
		this.serie_ctps = serie_ctps;
	}



	public String getPis() {
		return pis;
	}



	public void setPis(String pis) {
		this.pis = pis;
	}



	public Double getSalario() {
		return salario;
	}



	public void setSalario(Double salario) {
		this.salario = salario;
	}



	public Double getSalario_familia() {
		return salario_familia;
	}



	public void setSalario_familia(Double salario_familia) {
		this.salario_familia = salario_familia;
	}



	public String getCbo() {
		return cbo;
	}



	public void setCbo(String cbo) {
		this.cbo = cbo;
	}



	public String getFuncao() {
		return funcao;
	}



	public void setFuncao(String funcao) {
		this.funcao = funcao;
	}



	public String getTipo() {
		return tipo;
	}



	public void setTipo(String tipo) {
		this.tipo = tipo;
	}



	public String getUsuario_alteracao() {
		return usuario_alteracao;
	}



	public void setUsuario_alteracao(String usuario_alteracao) {
		this.usuario_alteracao = usuario_alteracao;
	}



	public Date getDt_admissao() {
		return dt_admissao;
	}



	public void setDt_admissao(Date dt_admissao) {
		this.dt_admissao = dt_admissao;
	}



	public Date getDt_nascimento() {
		return dt_nascimento;
	}



	public void setDt_nascimento(Date dt_nascimento) {
		this.dt_nascimento = dt_nascimento;
	}



	public Date getDt_cadastro() {
		return dt_cadastro;
	}



	public void setDt_cadastro(Date dt_cadastro) {
		this.dt_cadastro = dt_cadastro;
	}



	public Date getDt_alteracao() {
		return dt_alteracao;
	}



	public void setDt_alteracao(Date dt_alteracao) {
		this.dt_alteracao = dt_alteracao;
	}

	public int getPessoa_id_pessoa() {
		return pessoa_id_pessoa;
	}

	public void setPessoa_id_pessoa(int pessoa_id_pessoa) {
		this.pessoa_id_pessoa = pessoa_id_pessoa;
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + id_pessoa;
		result = prime * result
				+ ((nome_pessoa == null) ? 0 : nome_pessoa.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		Pessoa other = (Pessoa) obj;
		if (id_pessoa != other.id_pessoa)
			return false;
		if (nome_pessoa == null) {
			if (other.nome_pessoa != null)
				return false;
		} else if (!nome_pessoa.equals(other.nome_pessoa))
			return false;
		return true;
	}


	

}